package com.hyk.learning.provider;

import com.hyk.learning.config.RpcServiceConfig;

/**
 * @className: ServiceProvider
 * @author: hyk199710
 * @description: TODO
 * @date: 2024/5/10 21:13
 */
public interface ServiceProvider {

    /**
     * @param rpcServiceConfig: rpc service related attributes
     * @return void
     * @author 10091
     * @description TODO
     * @date 2024/5/10 21:20
     */
    void addService(RpcServiceConfig rpcServiceConfig);

    /**
     * @param rpcServiceName: rpc service name
     * @return Object service object
     * @author 10091
     * @description TODO
     * @date 2024/5/10 21:20
     */
    Object getService(String rpcServiceName);

    /**
     * @param rpcServiceConfig: rpc service related attributes
     * @return void
     * @author 10091
     * @description TODO
     * @date 2024/5/10 21:21
     */
    void publishService(RpcServiceConfig rpcServiceConfig);

}
